package T17;

import java.util.Scanner;

public class RegexDemo3 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个Email:");
        String email = scanner.nextLine();
        if (isValidEmail(email)) {
            System.out.println(email + "：是一个有效的电子邮箱号");
        } else {
            System.out.println(email + "：不是一个有效的电子邮箱号");
        }
        scanner.close();
    }

    public static boolean isValidEmail(String email) {
        // 检查是否包含@符号且只出现一次
        int atIndex = email.indexOf('@');
        if (atIndex == -1 || email.lastIndexOf('@') != atIndex) {
            return false;
        }
        // 检查是否包含.符号且至少出现一次
        int dotIndex = email.indexOf('.');
        if (dotIndex == -1) {
            return false;
        }
        // 检查@和.之间是否为三位数字
        String middlePart = email.substring(atIndex + 1, dotIndex);
        if (middlePart.length() != 3) {
            return false;
        }
        for (int i = 0; i < middlePart.length(); i++) {
            if (!Character.isDigit(middlePart.charAt(i))) {
                return false;
            }
        }
        // 邮箱名部分不能全为空
        if (atIndex == 0) {
            return false;
        }
        // 顶级域名部分不能全为空
        if (dotIndex == email.length() - 1) {
            return false;
        }
        return true;
    }
}